/**
 * 给定两个数组，编写一个函数来计算它们的交集。
 * 输出结果中的每个元素一定是唯一的。 我们可以不考虑输出结果的顺序。
 * 思路:让nums1大于nums2,如果不大于,进行数据转换.
 * 然后,用集合存储nums1,定义一个结果集,遍历nums2,进行帅选添加,最后把结果集转换为数组返回出去.
 */
var intersection = function (nums1, nums2) {
  // 数据交换
  if (nums1.length < nums2.length) {
    const tmp = nums1;
    nums1 = nums2;
    nums2 = tmp
  }
  const nums1Set = new Set(nums1);
  const res = new Set();
  for (let i = nums2.length - 1; i >= 0; i--) {
    nums1Set.has(nums2[i]) && res.add(nums2[i]);
  }
  return Array.from(res);
}
